package com.aidong.service;

/**
 * Created by john on 16-11-2.
 */
import com.aidong.cache.ItemCache;
import com.aidong.common.JobConsts;
import com.aidong.dao.wills.ReportDepositDao;
import com.aidong.model.wills.ReportDepositExt;
import com.aidong.model.wills.ReportDepositTotal;
import com.aidong.util.DateUtil;
import com.aidong.util.ExportUtil;
import com.aidong.util.FileCheckUtil;
import com.aidong.util.ReportUtil;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Service;

@Service
public class DepositReportService extends BaseJobService {
    protected Logger log = Logger.getLogger(DepositReportService.class);
    @Resource
    ReportDepositDao reportDepositDao;
    @Resource
    ReportUtil reportUtil;
    @Resource
    protected ItemCache cache;

    public DepositReportService() {
    }

    public synchronized void doJob() {
        Thread th1 = new Thread() {
            public void run() {
                try {
                    try {
                        DepositReportService.this.doDepositReport();
                    } catch (Exception var5) {
                        var5.printStackTrace();
                    }

                } finally {
                    ;
                }
            }
        };
        th1.start();
    }

    private void doDepositReport() throws Exception {
        try {
            Timestamp e = DateUtil.getCurrentTimestamp();
            String cur = DateUtil.formatDate(e, DateUtil.DATE_PATTERN_YYYYMMDD);
            String curDate = DateUtil.addDays(cur, -1);
            HashMap commonData = new HashMap();
            commonData.put("date", curDate);
            Map data = this.createAllData(false, "");
            data.putAll(commonData);
            String fileName = curDate + "_" + JobConsts.TEMPLATE_NAME_DEPOSIT_REPORT + JobConsts.EXCEL_SUFFIX;
            String fileChName = curDate + "_" + JobConsts.CH_NAME_DEPOSIT_REPORT + JobConsts.EXCEL_SUFFIX;
            String filePath = this.getDownloadPath() + curDate + "\\" + JobConsts.TEMPLATE_NAME_DEPOSIT_REPORT;
            String fileDbPath = curDate + "\\" + JobConsts.TEMPLATE_NAME_DEPOSIT_REPORT;
            FileCheckUtil.checkFilePath(filePath);
            ExportUtil.exportExcel(filePath, fileName, this.getTemplatePath(), JobConsts.TEMPLATE_NAME_DEPOSIT_REPORT + JobConsts.EXCEL_SUFFIX, data);
            this.reportUtil.addReportFile("03", fileName, fileChName, fileDbPath, curDate, "ALL");
        } catch (Exception var10) {
            var10.printStackTrace();
            this.log.error("生成各门店定金统计报表失败");
            return;
        }

        this.log.info("生成各门店定金统计报表成功");
    }

    public void createDepositReport(String serDate) throws Exception {
        try {
            HashMap commonData = new HashMap();
            commonData.put("date", serDate);
            Map data = this.createAllData(true, serDate);
            data.putAll(commonData);
            String fileName = serDate + "_" + JobConsts.TEMPLATE_NAME_DEPOSIT_REPORT + JobConsts.EXCEL_SUFFIX;
            String fileChName = serDate + "_" + JobConsts.CH_NAME_DEPOSIT_REPORT + JobConsts.EXCEL_SUFFIX;
            String filePath = this.getDownloadPath() + serDate + "\\" + JobConsts.TEMPLATE_NAME_DEPOSIT_REPORT;
            String fileDbPath = serDate + "\\" + JobConsts.TEMPLATE_NAME_DEPOSIT_REPORT;
            FileCheckUtil.checkFilePath(filePath);
            ExportUtil.exportExcel(filePath, fileName, this.getTemplatePath(), JobConsts.TEMPLATE_NAME_DEPOSIT_REPORT + JobConsts.EXCEL_SUFFIX, data);
            this.reportUtil.addReportFile("03", fileName, fileChName, fileDbPath, serDate, "ALL");
        } catch (Exception var9) {
            var9.printStackTrace();
            this.log.error("生成各门店定金统计报表失败");
            return;
        }

        this.log.info("生成各门店定金统计报表成功");
    }

    private Map<String, Object> createAllData(boolean flg, String serDate) {
        HashMap data = new HashMap();
        List allLst;
        if(flg) {
            allLst = this.reportDepositDao.getBalanceDataAllByDay(serDate);
        } else {
            allLst = this.reportDepositDao.getBalanceDataAll();
        }

        String preShopCode = "";
        ReportDepositTotal mo = new ReportDepositTotal();
        int i = 0;
        ArrayList deposit = new ArrayList();
        Iterator i$ = allLst.iterator();

        while(i$.hasNext()) {
            ReportDepositExt po = (ReportDepositExt)i$.next();
            if(!po.getShopCode().equals(preShopCode)) {
                ++i;
                preShopCode = po.getShopCode();
                mo = new ReportDepositTotal();
                deposit.add(mo);
                mo.setNo(String.valueOf(i));
                mo.setShopName(po.getShopName());
                switch(po.reportDate1.intValue()) {
                    case 1:
                        mo.setNmuAmount1(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setOpeningNmuBalance(po.getNMUBalance());
                        mo.setPtAmount1(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                        mo.setOpeningPtBalance(po.getPTBalance());
                    case 2:
                        mo.setNmuAmount2(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount2(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 3:
                        mo.setNmuAmount3(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount3(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 4:
                        mo.setNmuAmount4(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount4(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 5:
                        mo.setNmuAmount5(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount5(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 6:
                        mo.setNmuAmount6(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount6(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 7:
                        mo.setNmuAmount7(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount7(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 8:
                        mo.setNmuAmount8(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount8(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 9:
                        mo.setNmuAmount9(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount9(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 10:
                        mo.setNmuAmount10(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount10(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 11:
                        mo.setNmuAmount11(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount11(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 12:
                        mo.setNmuAmount12(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount12(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 13:
                        mo.setNmuAmount13(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount13(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 14:
                        mo.setNmuAmount14(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount14(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 15:
                        mo.setNmuAmount15(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount15(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 16:
                        mo.setNmuAmount16(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount16(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 17:
                        mo.setNmuAmount17(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount17(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 18:
                        mo.setNmuAmount18(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount18(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 19:
                        mo.setNmuAmount19(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount19(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 20:
                        mo.setNmuAmount20(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount20(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 21:
                        mo.setNmuAmount21(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount21(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 22:
                        mo.setNmuAmount22(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount22(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 23:
                        mo.setNmuAmount23(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount23(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 24:
                        mo.setNmuAmount24(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount24(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 25:
                        mo.setNmuAmount25(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount25(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 26:
                        mo.setNmuAmount26(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount26(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 27:
                        mo.setNmuAmount27(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount27(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 28:
                        mo.setNmuAmount28(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount28(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 29:
                        mo.setNmuAmount29(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount29(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 30:
                        mo.setNmuAmount30(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount30(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 31:
                        mo.setNmuAmount31(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount31(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                }
            } else {
                mo.setNo(String.valueOf(i));
                mo.setShopName(po.getShopName());
                switch(po.reportDate1.intValue()) {
                    case 1:
                        mo.setNmuAmount1(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setOpeningNmuBalance(po.getNMUBalance());
                        mo.setPtAmount1(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                        mo.setOpeningPtBalance(po.getPTBalance());
                    case 2:
                        mo.setNmuAmount2(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount2(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 3:
                        mo.setNmuAmount3(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount3(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 4:
                        mo.setNmuAmount4(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount4(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 5:
                        mo.setNmuAmount5(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount5(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 6:
                        mo.setNmuAmount6(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount6(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 7:
                        mo.setNmuAmount7(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount7(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 8:
                        mo.setNmuAmount8(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount8(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 9:
                        mo.setNmuAmount9(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount9(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 10:
                        mo.setNmuAmount10(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount10(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 11:
                        mo.setNmuAmount11(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount11(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 12:
                        mo.setNmuAmount12(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount12(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 13:
                        mo.setNmuAmount13(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount13(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 14:
                        mo.setNmuAmount14(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount14(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 15:
                        mo.setNmuAmount15(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount15(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 16:
                        mo.setNmuAmount16(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount16(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 17:
                        mo.setNmuAmount17(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount17(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 18:
                        mo.setNmuAmount18(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount18(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 19:
                        mo.setNmuAmount19(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount19(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 20:
                        mo.setNmuAmount20(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount20(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 21:
                        mo.setNmuAmount21(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount21(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 22:
                        mo.setNmuAmount22(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount22(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 23:
                        mo.setNmuAmount23(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount23(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 24:
                        mo.setNmuAmount24(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount24(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 25:
                        mo.setNmuAmount25(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount25(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 26:
                        mo.setNmuAmount26(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount26(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 27:
                        mo.setNmuAmount27(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount27(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 28:
                        mo.setNmuAmount28(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount28(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 29:
                        mo.setNmuAmount29(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount29(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 30:
                        mo.setNmuAmount30(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount30(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                    case 31:
                        mo.setNmuAmount31(Double.valueOf(po.getNMUCharge().doubleValue() - po.getNMUTransfer().doubleValue()));
                        mo.setPtAmount31(Double.valueOf(po.getPTCharge().doubleValue() - po.getPTTransfer().doubleValue()));
                }
            }
        }

        if(deposit.size() == 0) {
            deposit.add(new ReportDepositTotal());
        }

        data.put("depositLst", deposit);
        return data;
    }
}